#ifndef ORG_WXW0303_SYMBOL_DB_STRINGUTIL_H
#define ORG_WXW0303_SYMBOL_DB_STRINGUTIL_H

#include <string.h>

#include <string>

// 若字符串 left 与 right 相同,则返回真.
inline bool
strequal(const char *left,const char *right) noexcept
{
    return strcmp(left,right) == 0;
}

// 如果字符串 l 包含字符串 r,则返回真.
inline bool
strContain(const char *l,const char *r) noexcept
{
    return strstr(l,r) != NULL;
}

// 格式化字符串,并将其追加到 str 中.
std::string& format(std::string &str,const char *format_arg,...) __attribute__((format(printf,2,3))) ;
// 格式化字符串.
std::string format(const char *format_arg,...)  __attribute__((format(printf,1,2))) ;

// 若字符串 buf 中全部都是空白字符,则返回真.
bool allspace(const std::string &buf);

/// 移除 buf 两侧的空白字符.
void trim(std::string &buf);

#endif // ORG_WXW0303_SYMBOL_DB_STRINGUTIL_H
